.container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 24px;
}

.pageHeader {
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 16px;

  h2 {
    margin: 0;
    font-size: 20px;
    color: #333;
  }
}

.content {
  display: flex;
  flex-direction: column;
  gap: 24px;

  // 横向图片布局
  &.horizontal {
    .mainContent {
      flex-direction: column;

      .posterSection {
        width: 100%;
        max-width: none;
        
        .posterWrapper {
          padding-top: 56.25%; // 16:9 比例
          
          :global(.ant-image) {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;

            img {
              width: 100%;
              height: 100%;
              object-fit: contain;
            }
          }
        }
      }

      .basicInfo {
        margin-top: 24px;
      }
    }
  }
}

.mainContent {
  display: flex;
  gap: 24px;
  margin-bottom: 24px;

  .posterSection {
    flex-shrink: 0;
    width: 35%;
    max-width: 400px;

    .posterWrapper {
      position: relative;
      width: 100%;
      padding-top: 133.33%; // 3:4 比例
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      background: #f5f5f5;

      :global(.ant-image) {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;

        img {
          width: 100%;
          height: 100%;
          object-fit: contain;
        }
      }
    }
  }

  .basicInfo {
    flex: 1;
    min-width: 0;
  }
}

.infoGrid {
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: #fff;
  padding: 24px;
  border-radius: 8px;
  border: 1px solid #f0f0f0;
}

.mainInfo {
  .title {
    font-size: 24px;
    font-weight: bold;
    margin: 0 0 12px;
    color: #333;
  }

  .periodName {
    font-size: 16px;
    color: #666;
  }
}

.infoList {
  display: flex;
  flex-direction: column;
  gap: 16px;

  .infoItem {
    display: flex;
    align-items: flex-start;
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;

    &:last-child {
      border-bottom: none;
    }

    .label {
      flex-shrink: 0;
      width: 80px;
      color: #666;
      font-weight: 500;
    }

    .value {
      flex: 1;
      min-width: 0;
      color: #333;
    }

    .tagList {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
  }
}

.description {
  background: #fff;
  padding: 24px;
  border-radius: 8px;
  border: 1px solid #f0f0f0;

  .label {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 16px;
    color: #333;
    padding-left: 12px;
    border-left: 4px solid #1890ff;
  }

  .value {
    color: #595959;
    line-height: 1.8;
    white-space: pre-wrap;
  }
}

.playSourceSection {
  background: #fff;
  padding: 24px;
  border-radius: 8px;
  border: 1px solid #f0f0f0;

  .sectionTitle {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 16px;
    color: #333;
    padding-left: 12px;
    border-left: 4px solid #1890ff;
  }

  .sourceList {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;

    .sourceItem {
      display: inline-flex;
      align-items: center;
      padding: 8px 16px;
      background: #f0f5ff;
      border-radius: 4px;
      color: #1890ff;
      text-decoration: none;
      transition: all 0.3s;

      &:hover {
        background: #e6f7ff;
      }
    }
  }
}

// 移动端适配
@media screen and (max-width: 768px) {
  .container {
    padding: 1px;
  }

  .pageHeader {
    margin-bottom: 16px;
    
    h2 {
      font-size: 18px;
    }
  }

  .content {
    gap: 16px;

    &.horizontal {
      .mainContent {
        .posterSection {
          width: 100%;
          max-width: none;
          
          .posterWrapper {
            padding-top: 56.25%; // 保持16:9比例
          }
        }
      }
    }
  }

  .mainContent {
    flex-direction: column;
    gap: 16px;
    margin-bottom: 16px;

    .posterSection {
      width: 100%;
      max-width: none;

      // 不再统一使用16:9比例，保持原有比例
      .posterWrapper {
        padding-top: 133.33%; // 保持3:4比例
      }
    }

    // 如果是横图，则使用水平布局的样式会覆盖这里的竖图比例
  }

  .infoGrid {
    padding: 16px;
  }

  .mainInfo {
    .title {
      font-size: 20px;
      margin-bottom: 8px;
    }

    .periodName {
      font-size: 14px;
    }
  }

  .infoList {
    gap: 12px;

    .infoItem {
      padding: 6px 0;

      .label {
        width: 70px;
      }
    }
  }

  .description,
  .playSourceSection {
    padding: 16px;

    .label,
    .sectionTitle {
      font-size: 15px;
      margin-bottom: 12px;
    }
  }
} 